package br.com.monise.model;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;

@Entity
@Table(name = "APRENDIZ")
public class Aprendiz implements Serializable {
	
	private static final long serialVersionUID = 1L;
	
	@Id
	@GeneratedValue(strategy = GenerationType.AUTO)
	@Column(name = "ID_APRENDIZ")
	private Long idAprendiz;
	
	@Column(name = "NOME")
	private String nome;
	
	@Column(name = "IDIOMA")
	private String idioma;
	
	/*@Column(name = "PESO")
	private List<String> outrosIdiomas;*/
	
	@Column(name = "ESTILO_APRENDIZAGEM")
	private String estiloAprendizagem;
	
	@Column(name = "DATA_NASCIMENTO")
	private Date dataNascimento;
	
	@Column(name = "CPF")
	private String cpf;
	
	@Column(name="PATAMAR_ARTIGO")
	private BigDecimal patamarArtigo;
	
	@Column(name="PATAMAR_USUARIO")
	private BigDecimal patamarUsuario;
	
	@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY) 
	private List<Assunto> assuntos;
	
	public Long getIdAprendiz() {
		return idAprendiz;
	}
	
	public void setIdAprendiz(Long idAprendiz) {
		this.idAprendiz = idAprendiz;
	}
	
	public String getNome() {
		return nome;
	}
	
	public void setNome(String nome) {
		this.nome = nome;
	}
	
	public String getIdioma() {
		return idioma;
	}
	
	public void setIdioma(String idioma) {
		this.idioma = idioma;
	}

	public String getEstiloAprendizagem() {
		return estiloAprendizagem;
	}
	
	public void setEstiloAprendizagem(String estiloAprendizagem) {
		this.estiloAprendizagem = estiloAprendizagem;
	}
	
	public Date getDataNascimento() {
		return dataNascimento;
	}
	
	public void setDataNascimento(Date dataNascimento) {
		this.dataNascimento = dataNascimento;
	}
	
	public String getCpf() {
		return cpf;
	}
	
	public void setCpf(String cpf) {
		this.cpf = cpf;
	}

	public List<Assunto> getAssuntos() {
		return assuntos;
	}

	public void setAssuntos(List<Assunto> assuntos) {
		this.assuntos = assuntos;
	}

	public BigDecimal getPatamarArtigo() {
		return patamarArtigo;
	}

	public void setPatamarArtigo(BigDecimal patamarArtigo) {
		this.patamarArtigo = patamarArtigo;
	}

	public BigDecimal getPatamarUsuario() {
		return patamarUsuario;
	}

	public void setPatamarUsuario(BigDecimal patamarUsuario) {
		this.patamarUsuario = patamarUsuario;
	}


	

}
